Vorlesung Bowles
Bowles hat auch Mängel und ist in mancher Hinsicht suboptimal. Dennoch verwenden wir Bowles als Skript, und arbeiten kreativ damit: Weil es nicht optimal (aber immerhin schon sehr gut) ist, ist noch Luft nach oben, um die Beispiele zu verbessern. Schön an Bowles:
- Er hilft uns sehr ausführlich bis ins Detail zu *verstehen*, wie ein paar sehr nah verwandte Algorithmen eine sehr wichtige Problemklasse lösen, und wie man das anwendet.
- Bowles verwendet durchgängig vier gut ausgewählte, "kleine" und dadurch im Detail verstehbare Beispiel-Datensätze.
- In seinen Code-Beispielen arbeitet Bowles weitgehend nicht mit Bibliotheken, sondern mit plain Python, schnitzt sozusagen mit dem Taschenmesser statt einen CNC-Maschine zu benutzen. Unschätzbarer Vorteil: Man kann die Algorithem nachvollziehen! Das dient einem algorithmischen Verständnis, das weder einem reinen Bibliotheks-Anwender noch einem reinen Mathematiker sonst zugänglich ist.
Detaillierte Erklärungen, kleine Datensätze, nachvollziehbare Programmierung: Das alles ist für uns als Sudierende an einer FH gut, denn unser USP als (Bindestrich-) Informatiker besteht darin, Theorie algorithmisch umsetzen zu können. Wir verstehen nicht nur wie es geht - wir können es auch.
Gleichzeitig haben wir eine Methode für die Übungen im Kurs an der Hand: Bowles erklärt uns die Rechnung in Plain Python ohne Bibliotheken. Unsere Aufgabe besteht darin, die gleiche Rechnung mit wenigen Zeilen mit der Hilfe von Bibliotheken zu vereinfachen und zu verkürzen.
Auftrag für Studierende:
- Für jedes Kapitel die wesentlichen Inhalte zu jeder Überschrift zusammenfassen
- als Mindmap oder Markdown-Dokument
- je 3-7 Stichpunkte
- memorieren: mündlich kurz und knapp erklären können
- Fachbegriffe
- 'raussuchen
- im Kontext erklären können
- ins Glossar übernehmen
- ein eigenes Glossar erstellen
- Erklärungen in DE
- in eigenen Worten formulieren
- Querverweise zu anderen Glossarbegriffen: REL, ggf. auch BT, SYN etc.
- eine Datei markdown
- Fragen stellen!
- Was möchte ich noch wissen?
- Was brauche ich noch?
Varianten: (book) und (ipynb)
Einige Seiten liegen verschiedenen Varianten vor:
- als Zusammenfassung des jeweiligen Kapitels von Bowles, z.B. (book)Bowles_2.2_rocks.html
- als Kommentar zu einem ipynb-Notebook mit dem gleichen Dateinamen, z.B. (ipynb)Bowles_2.2_rocks.html
- als "didaktisches" ipynb-Notebook selbst, z.B. file:ipynb-tasks/bowles/Bowles_2.2_rocks.ipynb
Wo es solche Varianten gibt, ist das daran erkennbar, dass in der Navigationszeile
neben up next Impressum home
auch die Auswahl (book)
und (ipynb)
anklickbar ist.
Derzeit ist mir leider nicht bekannt, wie ich außer auf meine eigenen html-Seiten mit dieser Technik zusätzlich so auf eine ipynb-Datei verlinken kann, dass sich diese in einem lokal laufenden Jupyter-Notebook öffnet. Es bleibt derzeit also Aufgabe der Lernenden selbst, die entsprechende ipynb-Datei in Jupyter selbst zu öffnen und zu bearbeiten.
"didaktisches" ipynb-Notebook
Ein ipynb-Notebook, bei dem einzelne Anweisungen oder Funktionen durch XXX verdeckt wurden; eine Art Lückentext.
Aufgabe an die Lernenden: Schlage in den angegebenen Quellen nach, welcher Code hier zum Ziel führt.
Schwierigkeitsgrad: einfach, oft geradezu trivial. Es geht nur darum, sich minimal mit dem Code zu beschäftigen.